1. Field Of The Invention
This invention relates generally to data storage devices for computer systems. In particular, the present invention provides an error recovery method for parallel architecture data storage devices.
2. Description Of Related Art
Disk drives have long been popular mass storage devices. They provide a low cost solution to the problem of non-volatile data storage. Virtually all computer system manufacturers, therefore, provide for disk drives as system peripherals.
The major advantage of disk drives is low cost. This advantage is outweighed for some applications by the disadvantage of insufficient data transfer speed, particularly in supercomputer environments of the type provided by Cray Research, Inc., the Assignee of the present invention. The problems facing a computer system user wishing to increase the data transfer rates of disk drives are not trivial.
The basic structure of the disk drive consists of a metal disk coated with magnetic material rotating under one or more read/write heads. Most disk drives are multi-platen systems where a number of the metal disks are arranged in a stack.
All data transfers to disk drives are sequential in the sense that data moved in or out sequentially one word at a time. The access time to a selected word is partially dependent on its location. Data is recorded on the disk in concentric circles called "tracks". The disk drive has detection means for indicating when the magnetic head is positioned at the outermost track. A motor controls the head position causing the head to step from track to track. This head positioning function is called a "seek". The period required to position the Read/Write heads from the time the command is received until the time the drive becomes ready is known as the seek time.
Once a track is selected, it is necessary to wait for the desired location to rotate into position under the head. The average waiting time, known as latency time, is the time for half a revolution.
Within each track, information is organized into segments called "sectors". A sector can consist of any number of bytes, limited only by the storage capacity of the track. The addressing of sectors is typically a software function. So that the sectors can be identified by the software, each sector is preceded by an identifier block. The format of this identifier block is system dependent.
Usually each track is single bit serial, so that each byte is stored as eight consecutive bits on a track. Because track selection and latency increase access times, it is preferable to transfer large blocks of data which will be sorted in sequential locations. Once the disk heads are positioned at a particular track and no further head movement is required, data will be transferred at a fixed rate. This fixed rat is determined by the speed of the disk drive and is independent of the computer system itself.
Parallel architectures increase disk capacity and data transfer rates, but such architectures are more vulnerable to errors and the resultant corruption of data. If there are errors in these parallel architecture devices, then greater amounts of data may become inaccessible. Thus, the usefulness of parallel architecture data storage devices is limited by the fault tolerance of the device.